<?php
function outputBrowser ()
{
    global $cc;
    global $g_conf;
    $str = ob_get_contents();
    ob_end_clean();
    echo iconv("UTF-8","gbk//IGNORE",$str);
    ob_start();
}

if (!defined("IN_OP"))
{
    exit("You can't access this file directly...");
}
if ($curruser['acl'] != 255 || $curruser['account'] != G_SUPERACCOUNT)
{
    exit();
}
$gametype = intval(getvar("gametype"));
$gType = $gametype;
$chkGametype = chkGametype($gametype);
if ($chkGametype)
{
    include_once( "class_3d/CheckMode_3d.php" );
    $chk = new CheckMode_3d($curruser['acl'], 1, $gametype);
    $chk->checkShow3dPage();
    $show3D3S = $chk->show3D3S;
    unset($chk);
    $ui = new UI_3D(true, "报表管理");
    $jslink = "<script language=\"JScript.Encode\" src=\"site.js\"></script>" . ( "<script language=\"VBScript.Encode\" src=\"site.vbs\"></script>" );
    $ui->set("jslink", $jslink);
    $ui->header();
    include( "admin_menu_3d.php" );
}
else
{
    $ui = new UI(true, "报表管理");
    include( "admin_menu.php" );
}
include_once( "class/function_3d.php" );
require_once( "class_3d/RateConfig_3d.php" );
$msg = "";
$msg2 = "";
$msg3 = "";
$conf = new Config();
if (ispost())
{
    $uptype = getvar("uptype");
    if ($uptype == "ratechk")
    {
        if ($gametype < 1)
        {
            $RateConfig_3d = new RateConfig_3d(1);
        }
        else
        {
            $RateConfig_3d = new RateConfig_3d($gametype);
        }
        $betForNumTbl = array(13 => array("r01" => "01", "r02" => "00"), 14 => array("r01" => "01", "r02" => "00"), 15 => array("r01" => "01", "r02" => "00"), 16 => array("r01" => "01", "r02" => "00"), 20 => array("r01" => "012", "r02" => "001", "r03" => "000"), 21 => array("r01" => "012", "r02" => "001", "r03" => "000"), 35 => array("r01" => "012", "r02" => "001", "r03" => "000"));
        $numFor2 = array("r01" => array("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98"), "r02" => array("00", "11", "22", "33", "44", "55", "66", "77", "88", "99"));
        $numFor3 = array("r01" => array("012", "013", "014", "015", "016", "017", "018", "019", "021", "023", "024", "025", "026", "027", "028", "029", "031", "032", "034", "035", "036", "037", "038", "039", "041", "042", "043", "045", "046", "047", "048", "049", "051", "052", "053", "054", "056", "057", "058", "059", "061", "062", "063", "064", "065", "067", "068", "069", "071", "072", "073", "074", "075", "076", "078", "079", "081", "082", "083", "084", "085", "086", "087", "089", "091", "092", "093", "094", "095", "096", "097", "098", "102", "103", "104", "105", "106", "107", "108", "109", "120", "123", "124", "125", "126", "127", "128", "129", "130", "132", "134", "135", "136", "137", "138", "139", "140", "142", "143", "145", "146", "147", "148", "149", "150", "152", "153", "154", "156", "157", "158", "159", "160", "162", "163", "164", "165", "167", "168", "169", "170", "172", "173", "174", "175", "176", "178", "179", "180", "182", "183", "184", "185", "186", "187", "189", "190", "192", "193", "194", "195", "196", "197", "198", "201", "203", "204", "205", "206", "207", "208", "209", "210", "213", "214", "215", "216", "217", "218", "219", "230", "231", "234", "235", "236", "237", "238", "239", "240", "241", "243", "245", "246", "247", "248", "249", "250", "251", "253", "254", "256", "257", "258", "259", "260", "261", "263", "264", "265", "267", "268", "269", "270", "271", "273", "274", "275", "276", "278", "279", "280", "281", "283", "284", "285", "286", "287", "289", "290", "291", "293", "294", "295", "296", "297", "298", "301", "302", "304", "305", "306", "307", "308", "309", "310", "312", "314", "315", "316", "317", "318", "319", "320", "321", "324", "325", "326", "327", "328", "329", "340", "341", "342", "345", "346", "347", "348", "349", "350", "351", "352", "354", "356", "357", "358", "359", "360", "361", "362", "364", "365", "367", "368", "369", "370", "371", "372", "374", "375", "376", "378", "379", "380", "381", "382", "384", "385", "386", "387", "389", "390", "391", "392", "394", "395", "396", "397", "398", "401", "402", "403", "405", "406", "407", "408", "409", "410", "412", "413", "415", "416", "417", "418", "419", "420", "421", "423", "425", "426", "427", "428", "429", "430", "431", "432", "435", "436", "437", "438", "439", "450", "451", "452", "453", "456", "457", "458", "459", "460", "461", "462", "463", "465", "467", "468", "469", "470", "471", "472", "473", "475", "476", "478", "479", "480", "481", "482", "483", "485", "486", "487", "489", "490", "491", "492", "493", "495", "496", "497", "498", "501", "502", "503", "504", "506", "507", "508", "509", "510", "512", "513", "514", "516", "517", "518", "519", "520", "521", "523", "524", "526", "527", "528", "529", "530", "531", "532", "534", "536", "537", "538", "539", "540", "541", "542", "543", "546", "547", "548", "549", "560", "561", "562", "563", "564", "567", "568", "569", "570", "571", "572", "573", "574", "576", "578", "579", "580", "581", "582", "583", "584", "586", "587", "589", "590", "591", "592", "593", "594", "596", "597", "598", "601", "602", "603", "604", "605", "607", "608", "609", "610", "612", "613", "614", "615", "617", "618", "619", "620", "621", "623", "624", "625", "627", "628", "629", "630", "631", "632", "634", "635", "637", "638", "639", "640", "641", "642", "643", "645", "647", "648", "649", "650", "651", "652", "653", "654", "657", "658", "659", "670", "671", "672", "673", "674", "675", "678", "679", "680", "681", "682", "683", "684", "685", "687", "689", "690", "691", "692", "693", "694", "695", "697", "698", "701", "702", "703", "704", "705", "706", "708", "709", "710", "712", "713", "714", "715", "716", "718", "719", "720", "721", "723", "724", "725", "726", "728", "729", "730", "731", "732", "734", "735", "736", "738", "739", "740", "741", "742", "743", "745", "746", "748", "749", "750", "751", "752", "753", "754", "756", "758", "759", "760", "761", "762", "763", "764", "765", "768", "769", "780", "781", "782", "783", "784", "785", "786", "789", "790", "791", "792", "793", "794", "795", "796", "798", "801", "802", "803", "804", "805", "806", "807", "809", "810", "812", "813", "814", "815", "816", "817", "819", "820", "821", "823", "824", "825", "826", "827", "829", "830", "831", "832", "834", "835", "836", "837", "839", "840", "841", "842", "843", "845", "846", "847", "849", "850", "851", "852", "853", "854", "856", "857", "859", "860", "861", "862", "863", "864", "865", "867", "869", "870", "871", "872", "873", "874", "875", "876", "879", "890", "891", "892", "893", "894", "895", "896", "897", "901", "902", "903", "904", "905", "906", "907", "908", "910", "912", "913", "914", "915", "916", "917", "918", "920", "921", "923", "924", "925", "926", "927", "928", "930", "931", "932", "934", "935", "936", "937", "938", "940", "941", "942", "943", "945", "946", "947", "948", "950", "951", "952", "953", "954", "956", "957", "958", "960", "961", "962", "963", "964", "965", "967", "968", "970", "971", "972", "973", "974", "975", "976", "978", "980", "981", "982", "983", "984", "985", "986", "987"), "r02" => array("001", "002", "003", "004", "005", "006", "007", "008", "009", "010", "011", "020", "022", "030", "033", "040", "044", "050", "055", "060", "066", "070", "077", "080", "088", "090", "099", "100", "101", "110", "112", "113", "114", "115", "116", "117", "118", "119", "121", "122", "131", "133", "141", "144", "151", "155", "161", "166", "171", "177", "181", "188", "191", "199", "200", "202", "211", "212", "220", "221", "223", "224", "225", "226", "227", "228", "229", "232", "233", "242", "244", "252", "255", "262", "266", "272", "277", "282", "288", "292", "299", "300", "303", "311", "313", "322", "323", "330", "331", "332", "334", "335", "336", "337", "338", "339", "343", "344", "353", "355", "363", "366", "373", "377", "383", "388", "393", "399", "400", "404", "411", "414", "422", "424", "433", "434", "440", "441", "442", "443", "445", "446", "447", "448", "449", "454", "455", "464", "466", "474", "477", "484", "488", "494", "499", "500", "505", "511", "515", "522", "525", "533", "535", "544", "545", "550", "551", "552", "553", "554", "556", "557", "558", "559", "565", "566", "575", "577", "585", "588", "595", "599", "600", "606", "611", "616", "622", "626", "633", "636", "644", "646", "655", "656", "660", "661", "662", "663", "664", "665", "667", "668", "669", "676", "677", "686", "688", "696", "699", "700", "707", "711", "717", "722", "727", "733", "737", "744", "747", "755", "757", "766", "767", "770", "771", "772", "773", "774", "775", "776", "778", "779", "787", "788", "797", "799", "800", "808", "811", "818", "822", "828", "833", "838", "844", "848", "855", "858", "866", "868", "877", "878", "880", "881", "882", "883", "884", "885", "886", "887", "889", "898", "899", "900", "909", "911", "919", "922", "929", "933", "939", "944", "949", "955", "959", "966", "969", "977", "979", "988", "989", "990", "991", "992", "993", "994", "995", "996", "997", "998"), "r03" => array("000", "111", "222", "333", "444", "555", "666", "777", "888", "999"));
        $numForArr = array(2 => $numFor2, 3 => $numFor3);
        $paper_from_dateOld = $conf->Get("paper_from_date");
        $i = 1;
        while ($i < 7)
        {
            $prevTbl = $g_gametype_3d[$i]['en'];
            foreach ($g_disk_code as $disk_codeKey => $disk_codeVal)
            {
                $sql = "SELECT * FROM rate{$disk_codeVal}_{$prevTbl} WHERE lotto_id = 0 and bettype = 20";
                $rs = getdb($sql);
                while (!$rs->eof)
                {
                    $lotto_id = $rs->f['lotto_id'];
                    $bettype = $rs->f['bettype'];
                    $subid = $rs->f['subid'];
                    $ratedata = $rs->f['ratedata'];
                    $rateArr = $RateConfig_3d->mystr_split($ratedata, 8);
                    $fields = array();
                    $numArr = $RateConfig_3d->getBetTypeNumber($bettype);
                    if (isset($betForNumTbl[$bettype]))
                    {
                        $numForArrIDx = count($betForNumTbl[$bettype]);
                        foreach ($betForNumTbl[$bettype] as $betForNumTblKey => $betForNumTblVal)
                        {
                            $fieldsNum = array();
                            $fields[$betForNumTblKey] = $RateConfig_3d->getRateFromRateArr_OLD($bettype, $betForNumTblVal, $rateArr);
                            foreach ($numForArr[$numForArrIDx][$betForNumTblKey] as $numForArrVal)
                            {
                                if (!in_array($numForArrVal, $numArr))
                                {
                                    continue;
                                }
                                $chkRate = $RateConfig_3d->getRateFromRateArr_OLD($bettype, $numForArrVal, $rateArr);
                                $nowRate = $fields[$betForNumTblKey] - $chkRate;
                                if ($nowRate)
                                {
                                    $fieldsNum[] = "({$lotto_id}, {$bettype}, {$subid}, {$disk_codeKey}, {$numForArrVal}, {$nowRate})";
                                }
                            }
                            if (0 < count($fieldsNum))
                            {
                                $sql = "INSERT INTO ratenum_{$prevTbl} ( `lotto_id` , `bettype` , `subid` , `disk`, `num` , `rate`)";
                                $sql .= " VALUES ";
                                $sql .= implode(",", $fieldsNum);
                                getdb($sql);
                            }
                        }
                    }
                    else
                    {
                        foreach ($numArr as $numArrVal)
                        {
                            $numIdx = "r" . str_pad($numArrVal, 2, "0", STR_PAD_LEFT);
                            $fields[$numIdx] = $RateConfig_3d->getRateFromRateArr_OLD($bettype, $numArrVal, $rateArr);
                        }
                    }
                    db_update(" rate_{$prevTbl} ", $fields, " lotto_id = 0 and bettype = 20 and subid={$subid} and disk = {$disk_codeKey} ");
                    $rs->next();
                }
            }
            ++$i;
        }
        $msg3 = "<div class='msgBox-green'>检查赔率完成</div>";
        $conf->set("upgradeMsg_3d", $conf->get("upgradeMsg_3d") . "※ " . date("Y-m-d H:i:s") . " 检查赔率完成 \n");
    }
    else if ($uptype == "rate")
    {
        if ($gametype < 1)
        {
            $RateConfig_3d = new RateConfig_3d(1);
        }
        else
        {
            $RateConfig_3d = new RateConfig_3d($gametype);
        }
        $betForNumTbl = array(13 => array("r01" => "01", "r02" => "00"), 14 => array("r01" => "01", "r02" => "00"), 15 => array("r01" => "01", "r02" => "00"), 16 => array("r01" => "01", "r02" => "00"), 20 => array("r01" => "012", "r02" => "001", "r03" => "000"), 21 => array("r01" => "012", "r02" => "001", "r03" => "000"), 35 => array("r01" => "012", "r02" => "001", "r03" => "000"));
        $numFor2 = array("r01" => array("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98"), "r02" => array("00", "11", "22", "33", "44", "55", "66", "77", "88", "99"));
        $numFor3 = array("r01" => array("012", "013", "014", "015", "016", "017", "018", "019", "021", "023", "024", "025", "026", "027", "028", "029", "031", "032", "034", "035", "036", "037", "038", "039", "041", "042", "043", "045", "046", "047", "048", "049", "051", "052", "053", "054", "056", "057", "058", "059", "061", "062", "063", "064", "065", "067", "068", "069", "071", "072", "073", "074", "075", "076", "078", "079", "081", "082", "083", "084", "085", "086", "087", "089", "091", "092", "093", "094", "095", "096", "097", "098", "102", "103", "104", "105", "106", "107", "108", "109", "120", "123", "124", "125", "126", "127", "128", "129", "130", "132", "134", "135", "136", "137", "138", "139", "140", "142", "143", "145", "146", "147", "148", "149", "150", "152", "153", "154", "156", "157", "158", "159", "160", "162", "163", "164", "165", "167", "168", "169", "170", "172", "173", "174", "175", "176", "178", "179", "180", "182", "183", "184", "185", "186", "187", "189", "190", "192", "193", "194", "195", "196", "197", "198", "201", "203", "204", "205", "206", "207", "208", "209", "210", "213", "214", "215", "216", "217", "218", "219", "230", "231", "234", "235", "236", "237", "238", "239", "240", "241", "243", "245", "246", "247", "248", "249", "250", "251", "253", "254", "256", "257", "258", "259", "260", "261", "263", "264", "265", "267", "268", "269", "270", "271", "273", "274", "275", "276", "278", "279", "280", "281", "283", "284", "285", "286", "287", "289", "290", "291", "293", "294", "295", "296", "297", "298", "301", "302", "304", "305", "306", "307", "308", "309", "310", "312", "314", "315", "316", "317", "318", "319", "320", "321", "324", "325", "326", "327", "328", "329", "340", "341", "342", "345", "346", "347", "348", "349", "350", "351", "352", "354", "356", "357", "358", "359", "360", "361", "362", "364", "365", "367", "368", "369", "370", "371", "372", "374", "375", "376", "378", "379", "380", "381", "382", "384", "385", "386", "387", "389", "390", "391", "392", "394", "395", "396", "397", "398", "401", "402", "403", "405", "406", "407", "408", "409", "410", "412", "413", "415", "416", "417", "418", "419", "420", "421", "423", "425", "426", "427", "428", "429", "430", "431", "432", "435", "436", "437", "438", "439", "450", "451", "452", "453", "456", "457", "458", "459", "460", "461", "462", "463", "465", "467", "468", "469", "470", "471", "472", "473", "475", "476", "478", "479", "480", "481", "482", "483", "485", "486", "487", "489", "490", "491", "492", "493", "495", "496", "497", "498", "501", "502", "503", "504", "506", "507", "508", "509", "510", "512", "513", "514", "516", "517", "518", "519", "520", "521", "523", "524", "526", "527", "528", "529", "530", "531", "532", "534", "536", "537", "538", "539", "540", "541", "542", "543", "546", "547", "548", "549", "560", "561", "562", "563", "564", "567", "568", "569", "570", "571", "572", "573", "574", "576", "578", "579", "580", "581", "582", "583", "584", "586", "587", "589", "590", "591", "592", "593", "594", "596", "597", "598", "601", "602", "603", "604", "605", "607", "608", "609", "610", "612", "613", "614", "615", "617", "618", "619", "620", "621", "623", "624", "625", "627", "628", "629", "630", "631", "632", "634", "635", "637", "638", "639", "640", "641", "642", "643", "645", "647", "648", "649", "650", "651", "652", "653", "654", "657", "658", "659", "670", "671", "672", "673", "674", "675", "678", "679", "680", "681", "682", "683", "684", "685", "687", "689", "690", "691", "692", "693", "694", "695", "697", "698", "701", "702", "703", "704", "705", "706", "708", "709", "710", "712", "713", "714", "715", "716", "718", "719", "720", "721", "723", "724", "725", "726", "728", "729", "730", "731", "732", "734", "735", "736", "738", "739", "740", "741", "742", "743", "745", "746", "748", "749", "750", "751", "752", "753", "754", "756", "758", "759", "760", "761", "762", "763", "764", "765", "768", "769", "780", "781", "782", "783", "784", "785", "786", "789", "790", "791", "792", "793", "794", "795", "796", "798", "801", "802", "803", "804", "805", "806", "807", "809", "810", "812", "813", "814", "815", "816", "817", "819", "820", "821", "823", "824", "825", "826", "827", "829", "830", "831", "832", "834", "835", "836", "837", "839", "840", "841", "842", "843", "845", "846", "847", "849", "850", "851", "852", "853", "854", "856", "857", "859", "860", "861", "862", "863", "864", "865", "867", "869", "870", "871", "872", "873", "874", "875", "876", "879", "890", "891", "892", "893", "894", "895", "896", "897", "901", "902", "903", "904", "905", "906", "907", "908", "910", "912", "913", "914", "915", "916", "917", "918", "920", "921", "923", "924", "925", "926", "927", "928", "930", "931", "932", "934", "935", "936", "937", "938", "940", "941", "942", "943", "945", "946", "947", "948", "950", "951", "952", "953", "954", "956", "957", "958", "960", "961", "962", "963", "964", "965", "967", "968", "970", "971", "972", "973", "974", "975", "976", "978", "980", "981", "982", "983", "984", "985", "986", "987"), "r02" => array("001", "002", "003", "004", "005", "006", "007", "008", "009", "010", "011", "020", "022", "030", "033", "040", "044", "050", "055", "060", "066", "070", "077", "080", "088", "090", "099", "100", "101", "110", "112", "113", "114", "115", "116", "117", "118", "119", "121", "122", "131", "133", "141", "144", "151", "155", "161", "166", "171", "177", "181", "188", "191", "199", "200", "202", "211", "212", "220", "221", "223", "224", "225", "226", "227", "228", "229", "232", "233", "242", "244", "252", "255", "262", "266", "272", "277", "282", "288", "292", "299", "300", "303", "311", "313", "322", "323", "330", "331", "332", "334", "335", "336", "337", "338", "339", "343", "344", "353", "355", "363", "366", "373", "377", "383", "388", "393", "399", "400", "404", "411", "414", "422", "424", "433", "434", "440", "441", "442", "443", "445", "446", "447", "448", "449", "454", "455", "464", "466", "474", "477", "484", "488", "494", "499", "500", "505", "511", "515", "522", "525", "533", "535", "544", "545", "550", "551", "552", "553", "554", "556", "557", "558", "559", "565", "566", "575", "577", "585", "588", "595", "599", "600", "606", "611", "616", "622", "626", "633", "636", "644", "646", "655", "656", "660", "661", "662", "663", "664", "665", "667", "668", "669", "676", "677", "686", "688", "696", "699", "700", "707", "711", "717", "722", "727", "733", "737", "744", "747", "755", "757", "766", "767", "770", "771", "772", "773", "774", "775", "776", "778", "779", "787", "788", "797", "799", "800", "808", "811", "818", "822", "828", "833", "838", "844", "848", "855", "858", "866", "868", "877", "878", "880", "881", "882", "883", "884", "885", "886", "887", "889", "898", "899", "900", "909", "911", "919", "922", "929", "933", "939", "944", "949", "955", "959", "966", "969", "977", "979", "988", "989", "990", "991", "992", "993", "994", "995", "996", "997", "998"), "r03" => array("000", "111", "222", "333", "444", "555", "666", "777", "888", "999"));
        $numForArr = array(2 => $numFor2, 3 => $numFor3);
        $paper_from_dateOld = $conf->Get("paper_from_date");
        $i = 1;
        while ($i < 7)
        {
            $prevTbl = $g_gametype_3d[$i]['en'];
            $sql = "TRUNCATE TABLE  `rate_{$prevTbl}`";
            getdb($sql);
            $sql = "TRUNCATE TABLE  `ratenum_{$prevTbl}`";
            getdb($sql);
            foreach ($g_disk_code as $disk_codeKey => $disk_codeVal)
            {
                $sql = "SELECT * FROM rate{$disk_codeVal}_{$prevTbl} WHERE lotto_id = 0";
                $rs = getdb($sql);
                while (!$rs->eof)
                {
                    $lotto_id = $rs->f['lotto_id'];
                    $bettype = $rs->f['bettype'];
                    $subid = $rs->f['subid'];
                    $ratedata = $rs->f['ratedata'];
                    $rateArr = $RateConfig_3d->mystr_split($ratedata, 8);
                    $fields = array();
                    $fields['bettype'] = $bettype;
                    $fields['subid'] = $subid;
                    $fields['disk'] = $disk_codeKey;
                    $numArr = $RateConfig_3d->getBetTypeNumber($bettype);
                    if (isset($betForNumTbl[$bettype]))
                    {
                        $numForArrIDx = count($betForNumTbl[$bettype]);
                        foreach ($betForNumTbl[$bettype] as $betForNumTblKey => $betForNumTblVal)
                        {
                            $fieldsNum = array();
                            $fields[$betForNumTblKey] = $RateConfig_3d->getRateFromRateArr_OLD($bettype, $betForNumTblVal, $rateArr);
                            foreach ($numForArr[$numForArrIDx][$betForNumTblKey] as $numForArrVal)
                            {
                                if (!in_array($numForArrVal, $numArr))
                                {
                                    continue;
                                }
                                $chkRate = $RateConfig_3d->getRateFromRateArr_OLD($bettype, $numForArrVal, $rateArr);
                                $nowRate = $fields[$betForNumTblKey] - $chkRate;
                                if ($nowRate)
                                {
                                    $fieldsNum[] = "({$lotto_id}, {$bettype}, {$subid}, {$disk_codeKey}, {$numForArrVal}, {$nowRate})";
                                }
                            }
                            if (0 < count($fieldsNum))
                            {
                                $sql = "INSERT INTO ratenum_{$prevTbl} ( `lotto_id` , `bettype` , `subid` , `disk`, `num` , `rate`)";
                                $sql .= " VALUES ";
                                $sql .= implode(",", $fieldsNum);
                                getdb($sql);
                            }
                        }
                    }
                    else
                    {
                        foreach ($numArr as $numArrVal)
                        {
                            $numIdx = "r" . str_pad($numArrVal, 2, "0", STR_PAD_LEFT);
                            $fields[$numIdx] = $RateConfig_3d->getRateFromRateArr_OLD($bettype, $numArrVal, $rateArr);
                        }
                    }
                    db_insert(" rate_{$prevTbl} ", $fields);
                    $rs->next();
                }
            }
            ++$i;
        }
        $msg = "<div class='msgBox-green'>复制赔率完成</div>";
        $conf->set("upgradeMsg_3d", $conf->get("upgradeMsg_3d") . "※ " . date("Y-m-d H:i:s") . " 升级赔率完成 \n");
    }
    else if ($uptype == "upmsg")
    {
        $conf->set("upgradeMsg_3d", "");
    }
    else if ($uptype == "betacl")
    {
        $paper_from_date = $conf->get("paper_from_date");
        if ($paper_from_date == "")
        {
            $paper_from_date = date("Y-m-") . "01";
        }
        $paper_from_dateINT = strtotime($paper_from_date) - 86400;
        $sql = "select A.id as id_0, B.id as id_1,C.id as id_2,D.id as id_3,E.id as id_4 from k_user A";
        $sql .= " left join k_user B ON B.id = A.prev_id";
        $sql .= " left join k_user C ON C.id = B.prev_id";
        $sql .= " left join k_user D ON D.id = C.prev_id";
        $sql .= " left join k_user E ON E.id = D.prev_id";
        $sql .= " Where A.acl = 1 and A.lastlogdt >= {$paper_from_dateINT}";
        $rs = getdb($sql);
        $chkI = 1000;
        $chkC = 0;
        while (!$rs->eof)
        {
            $user_id = $rs->f['id_0'];
            $acl2 = $rs->f['id_1'];
            $acl3 = $rs->f['id_2'];
            $acl4 = $rs->f['id_3'];
            $acl5 = $rs->f['id_4'];
            $sql = "select id from bet where user_id = {$user_id} and acl2 < 1 LIMIT 1";
            $rs2 = getdb($sql);
            if (!$rs2->eof)
            {
                $sql = "update bet set acl2 = {$acl2}, acl3 = {$acl3}, acl4 = {$acl4},acl5 = {$acl5} where user_id = {$user_id} and acl2 < 1";
                getdb($sql);
            }
            $i = 1;
            while ($i < 9)
            {
                $tblTemp = $g_gametype_3d[$i]['en'];
                $sql = "select id from bet_{$tblTemp} where user_id = {$user_id} and acl2 < 1 LIMIT 1";
                $rs2 = getdb($sql);
                if (!$rs2->eof)
                {
                    $sql = "update bet_{$tblTemp} set acl2 = {$acl2}, acl3 = {$acl3}, acl4 = {$acl4},acl5 = {$acl5} where user_id = {$user_id} and acl2 < 1";
                    getdb($sql);
                }
                $sql = "select id from xbet_{$tblTemp} where user_id = {$user_id} and acl2 < 1 LIMIT 1";
                $rs2 = getdb($sql);
                if (!$rs2->eof)
                {
                    $sql = "update xbet_{$tblTemp} set acl2 = {$acl2}, acl3 = {$acl3}, acl4 = {$acl4},acl5 = {$acl5} where user_id = {$user_id} and acl2 < 1";
                    getdb($sql);
                }
                ++$i;
            }
            if ($chkC && $chkC % $chkI == 0)
            {
                $conf->set("upgradeMsg_3d", $conf->get("upgradeMsg_3d") . "※ " . date("Y-m-d H:i:s") . " 检查xbet,bet注单ACL值完成{$chkI}个帐号,最後登入日:" . date("Y-m-d", $paper_from_dateINT) . " \n");
            }
            ++$chkC;
            $rs->next();
        }
        $rs->close();
        $conf->set("upgradeMsg_3d", $conf->get("upgradeMsg_3d") . "※ " . date("Y-m-d H:i:s") . " 检查注单ACL值完成 \n");
        $msg2 = "<div class='msgBox-green'>检查注单ACL值完成</div>";
    }
}
$tpl = new Template2();
$tpl->load("main", "upgrade_3d.htm");
$tpl->set(array("gametype" => $gametype, "msg" => $msg, "msg2" => $msg2, "msg3" => $msg3, "upgradeMsg_3d" => nl2br($conf->get("upgradeMsg_3d"))));
echo title("【资料库升级】");
$tpl->show("main");
$ui->footer();
?>